﻿using MongoDB.Bson;
using MongoDB.Driver;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Doolin.MongoRepository.Commons
{
  public interface IMongoDbContext
  {
    IMongoCollection<TEntity> GetCollection<TEntity>();
    IMongoCollection<TEntity> GetCollection<TEntity>(string collectionName);
    IMongoCollection<BsonDocument> GetBsonMongoCollection(string collectionName);
    int SaveChanges();
    void Dispose();
    Task AddCommand(Func<Task> func);
  }
}
